%&Plain
% This file produces font samples; see bottom.

\magnification=1200
\hoffset=-0.5in
\voffset=-0.5in

\nopagenumbers
\parindent=0pt
\hsize=6.3in
\vsize=9.7in

\def\init{\font\testfont=\fontname
  \leftline{\tt\fontname}
  \bigskip\bigskip
  \testfont}

\newcount\m \newcount\n \newcount\p \newdimen\dim
\def\oct#1{\hbox{\rm\'{}\kern-.2em\it#1\/\kern.05em}} % octal constant
\def\hex#1{\hbox{\rm\H{}\tt#1}} % hexadecimal constant
\def\setdigs#1"#2{\gdef\h{#2}% \h=hex prefix; \0\1=corresponding octal
  \m=\n \divide\m by 64 \xdef\0{\the\m}%
  \multiply\m by-64 \advance\m by\n \divide\m by 8 \xdef\1{\the\m}}
\def\testrow{\setbox0=\hbox{\penalty 1\def\\{\char"\h}%
  \\0\\1\\2\\3\\4\\5\\6\\7\\8\\9\\A\\B\\C\\D\\E\\F%
  \global\p=\lastpenalty}} % \p=1 if none of the characters exist
\def\oddline{\cr
  \noalign{\nointerlineskip}
  \multispan{19}\hrulefill&
  \setbox0=\hbox{\lower 2.3pt\hbox{\hex{\h x}}}\smash{\box0}\cr
  \noalign{\nointerlineskip}}
\newif\ifskipping

\def\halfevenline{\loop\skippingfalse
  \ifnum\n<128 \m=\n \divide\m 16 \chardef\next=\m
  \expandafter\setdigs\meaning\next \testrow
  \ifnum\p=1
  \skippingfalse   % if \skippingtrue then empty rows are removed
  \fi\fi
  \ifskipping \global\advance\n 16 \repeat
  \ifnum\n=128 \let\next=\endchart\else\let\next=\halfmorechart\fi
  \next}
\def\halfmorechart{\cr\noalign{\hrule\penalty5000}
  \chartline \oddline \m=\1 \advance\m 1 \xdef\1{\the\m}
  \chartline \halfevenline}

\def\evenline{\loop\skippingfalse
  \ifnum\n<256 \m=\n \divide\m 16 \chardef\next=\m
  \expandafter\setdigs\meaning\next \testrow
  \ifnum\p=1
  \skippingfalse   % if \skippingtrue then empty rows are removed
  \fi\fi
  \ifskipping \global\advance\n 16 \repeat
  \ifnum\n=256 \let\next=\endchart\else\let\next=\morechart\fi
  \next}

\def\morechart{\cr\noalign{\hrule\penalty5000}
  \chartline \oddline \m=\1 \advance\m 1 \xdef\1{\the\m}
  \chartline \evenline}
\def\chartline{&\oct{\0\1x}&&\:&&\:&&\:&&\:&&\:&&\:&&\:&&\:&&}
\def\chartstrut{\lower4.5pt\vbox to 14pt{}}

\def\halftable{$$\global\n=0
  \halign to\hsize\bgroup
  \chartstrut##\tabskip0pt plus10pt&
  &\hfil##\hfil&\vrule##\cr
  \lower6.5pt\null
  &&&\oct0&&\oct1&&\oct2&&\oct3&&\oct4&&\oct5&&\oct6&&\oct7&\halfevenline}

\def\table{$$\global\n=0
  \halign to\hsize\bgroup
  \chartstrut##\tabskip0pt plus10pt&
  &\hfil##\hfil&\vrule##\cr
  \lower6.5pt\null
  &&&\oct0&&\oct1&&\oct2&&\oct3&&\oct4&&\oct5&&\oct6&&\oct7&\evenline}

\def\endchart{\cr\noalign{\hrule}
  \raise11.5pt\null&&&\hex 8&&\hex 9&&\hex A&&\hex B&
  &\hex C&&\hex D&&\hex E&&\hex F&\cr\egroup$$\par\vfil\eject}

\def\:{\setbox0=\hbox{\char\n}%
  \ifdim\ht0>7.5pt\reposition
  \else\ifdim\dp0>2.5pt\reposition\fi\fi
  \box0\global\advance\n 1 }
\def\reposition{\setbox0=\vbox{\kern2pt\box0}\dim=\dp0
  \advance\dim 2pt \dp0=\dim}
\def\centerlargechars{
  \def\reposition{\setbox0=\hbox{$\vcenter{\kern2pt\box0\kern2pt}$}}}

\def\text#1{{\baselineskip=#1\rightskip=0pt plus5em
``the quick brown fox jumps over a lazy dog''\par
``THE QUICK BROWN FOX JUMPS OVER A LAZY DOG''\par
ligatures: fluffy, waffle, firefly, difficult, en--dash, em---dash\par
kerning: boxer, cooked, vowel\par
`foreign' letters:\par
\'o \`o \^o \"o \~o \=o \u o \v o \H o \.o \c o \d o \b o
\oe\ \OE\ \ae\ \AE\ \aa\ \AA\ \o\ \O\ \l\ \L\ \ss\ \i\ \j\par
}\bigskip\bigskip}

% \def\fontname{cmb10}     \init\text{12pt}\halftable
% \def\fontname{cmbsy10}   \init\halftable              % no \text
% \def\fontname{cmbx10}    \init\text{12pt}\halftable
% \def\fontname{cmbx12}    \init\text{12pt}\halftable
% \def\fontname{cmbx5}     \init\text{7pt}\halftable
% \def\fontname{cmbx6}     \init\text{8pt}\halftable
% \def\fontname{cmbx7}     \init\text{9pt}\halftable
% \def\fontname{cmbx8}     \init\text{10pt}\halftable
% \def\fontname{cmbx9}     \init\text{11pt}\halftable
% \def\fontname{cmbxsl10}  \init\text{12pt}\halftable
% \def\fontname{cmbxti10}  \init\text{12pt}\halftable
% \def\fontname{cmcsc10}   \init\text{12pt}\halftable
% \def\fontname{cmdunh10}  \init\text{12pt}\halftable
% \def\fontname{cmex10}    \init\halftable              % no \text
% \def\fontname{cmff10}    \init\text{12pt}\halftable
% \def\fontname{cmfi10}    \init\text{12pt}\halftable
% \def\fontname{cmfib8}    \init\text{10pt}\halftable
% \def\fontname{cminch}    \init\halftable              % no \text
% \def\fontname{cmitt10}   \init\text{12pt}\halftable
% \def\fontname{cmmi10}    \init\halftable              % no \text
% \def\fontname{cmmi12}    \init\halftable              % no \text
% \def\fontname{cmmi5}     \init\halftable              % no \text
% \def\fontname{cmmi6}     \init\halftable              % no \text
% \def\fontname{cmmi7}     \init\halftable              % no \text
% \def\fontname{cmmi8}     \init\halftable              % no \text
% \def\fontname{cmmi9}     \init\halftable              % no \text
% \def\fontname{cmmib10}   \init\halftable              % no \text
% \def\fontname{cmr10}     \init\text{12pt}\halftable
% \def\fontname{cmr12}     \init\text{12pt}\halftable
% \def\fontname{cmr17}     \init\text{19pt}\halftable
% \def\fontname{cmr5}      \init\text{7pt}\halftable
% \def\fontname{cmr6}      \init\text{8pt}\halftable
% \def\fontname{cmr7}      \init\text{9pt}\halftable
% \def\fontname{cmr8}      \init\text{10pt}\halftable
% \def\fontname{cmr9}      \init\text{11pt}\halftable
% \def\fontname{cmsl10}    \init\text{12pt}\halftable
% \def\fontname{cmsl12}    \init\text{12pt}\halftable
% \def\fontname{cmsl8}     \init\text{10pt}\halftable
% \def\fontname{cmsl9}     \init\text{11pt}\halftable
% \def\fontname{cmsltt10}  \init\text{12pt}\halftable
% \def\fontname{cmss10}    \init\text{12pt}\halftable
% \def\fontname{cmss12}    \init\text{12pt}\halftable
% \def\fontname{cmss17}    \init\text{19pt}\halftable
% \def\fontname{cmss8}     \init\text{10pt}\halftable
% \def\fontname{cmss9}     \init\text{11pt}\halftable
% \def\fontname{cmssbx10}  \init\text{12pt}\halftable
% \def\fontname{cmssdc10}  \init\text{12pt}\halftable
% \def\fontname{cmssi10}   \init\text{12pt}\halftable
% \def\fontname{cmssi12}   \init\text{12pt}\halftable
% \def\fontname{cmssi17}   \init\text{19pt}\halftable
% \def\fontname{cmssi8}    \init\text{10pt}\halftable
% \def\fontname{cmssi9}    \init\text{11pt}\halftable
% \def\fontname{cmssq8}    \init\text{10pt}\halftable
% \def\fontname{cmssqi8}   \init\text{10pt}\halftable
% \def\fontname{cmsy10}    \init\halftable              % no \text
% \def\fontname{cmsy5}     \init\halftable              % no \text
% \def\fontname{cmsy6}     \init\halftable              % no \text
% \def\fontname{cmsy7}     \init\halftable              % no \text
% \def\fontname{cmsy8}     \init\halftable              % no \text
% \def\fontname{cmsy9}     \init\halftable              % no \text
% \def\fontname{cmtcsc10}  \init\text{12pt}\halftable
% \def\fontname{cmtex10}   \init\text{12pt}\halftable
% \def\fontname{cmtex8}    \init\text{10pt}\halftable
% \def\fontname{cmtex9}    \init\text{11pt}\halftable
% \def\fontname{cmti10}    \init\text{12pt}\halftable
% \def\fontname{cmti12}    \init\text{12pt}\halftable
% \def\fontname{cmti7}     \init\text{9pt}\halftable
% \def\fontname{cmti8}     \init\text{10pt}\halftable
% \def\fontname{cmti9}     \init\text{11pt}\halftable
% \def\fontname{cmtt10}    \init\text{12pt}\halftable
% \def\fontname{cmtt12}    \init\text{12pt}\halftable
% \def\fontname{cmtt8}     \init\text{10pt}\halftable
% \def\fontname{cmtt9}     \init\text{11pt}\halftable
% \def\fontname{cmu10}     \init\text{12pt}\halftable
% \def\fontname{cmvtt10}   \init\text{12pt}\halftable
% \def\fontname{circle10}  \init\halftable              % no \text
% \def\fontname{circlew10} \init\halftable              % no \text
% \def\fontname{lasy10}    \init\halftable              % no \text
% \def\fontname{lasy5}     \init\halftable              % no \text
% \def\fontname{lasy6}     \init\halftable              % no \text
% \def\fontname{lasy7}     \init\halftable              % no \text
% \def\fontname{lasy8}     \init\halftable              % no \text
% \def\fontname{lasy9}     \init\halftable              % no \text
% \def\fontname{lasyb10}   \init\halftable              % no \text
% \def\fontname{line10}    \init\halftable              % no \text
% \def\fontname{linew10}   \init\halftable              % no \text
% \def\fontname{logo10}    \init\halftable              % no \text
% \def\fontname{logo8}     \init\halftable              % no \text
% \def\fontname{logo9}     \init\halftable              % no \text
% \def\fontname{logobf10}  \init\halftable              % no \text
% \def\fontname{logosl10}  \init\halftable              % no \text

\input pstext    % defines \PStext

% Virtual PS fonts.
% \PStext assumes T1 encoding, so we use "*8t" font names:

% \def\fontname{pagd8t}    \init{\PStext\text{12pt}}\table
% \def\fontname{pagdo8t}   \init{\PStext\text{12pt}}\table
% \def\fontname{pagk8t}    \init{\PStext\text{12pt}}\table
% \def\fontname{pagko8t}   \init{\PStext\text{12pt}}\table
% \def\fontname{pagkc8t}   \init{\PStext\text{12pt}}\table
% \def\fontname{pbkd8t}    \init{\PStext\text{12pt}}\table
% \def\fontname{pbkdi8t}   \init{\PStext\text{12pt}}\table
% \def\fontname{pbkl8t}    \init{\PStext\text{12pt}}\table
% \def\fontname{pbkli8t}   \init{\PStext\text{12pt}}\table
% \def\fontname{pbklc8t}   \init{\PStext\text{12pt}}\table
% \def\fontname{pcrb8t}    \init{\PStext\text{12pt}}\table
% \def\fontname{pcrbo8t}   \init{\PStext\text{12pt}}\table
% \def\fontname{pcrr8t}    \init{\PStext\text{12pt}}\table
% \def\fontname{pcrro8t}   \init{\PStext\text{12pt}}\table
% \def\fontname{pcrrc8t}   \init{\PStext\text{12pt}}\table
% \def\fontname{phvb8t}    \init{\PStext\text{12pt}}\table
% \def\fontname{phvbo8t}   \init{\PStext\text{12pt}}\table
% \def\fontname{phvr8t}    \init{\PStext\text{12pt}}\table
% \def\fontname{phvro8t}   \init{\PStext\text{12pt}}\table
% \def\fontname{phvrc8t}   \init{\PStext\text{12pt}}\table
% \def\fontname{pncb8t}    \init{\PStext\text{12pt}}\table
% \def\fontname{pncbi8t}   \init{\PStext\text{12pt}}\table
% \def\fontname{pncr8t}    \init{\PStext\text{12pt}}\table
% \def\fontname{pncri8t}   \init{\PStext\text{12pt}}\table
% \def\fontname{pncrc8t}   \init{\PStext\text{12pt}}\table
% \def\fontname{pplb8t}    \init{\PStext\text{12pt}}\table
% \def\fontname{pplbi8t}   \init{\PStext\text{12pt}}\table
% \def\fontname{pplr8t}    \init{\PStext\text{12pt}}\table
% \def\fontname{pplri8t}   \init{\PStext\text{12pt}}\table
% \def\fontname{pplrc8t}   \init{\PStext\text{12pt}}\table
% \def\fontname{ptmb8t}    \init{\PStext\text{12pt}}\table
% \def\fontname{ptmbi8t}   \init{\PStext\text{12pt}}\table
\def\fontname{ptmr8r}    \init\table        % see raw encoding
% \def\fontname{ptmr7t}    \init\halftable    % see OT1 encoding
% \def\fontname{ptmr8t}    \init{\PStext\text{12pt}}\table
% \def\fontname{ptmri8t}   \init{\PStext\text{12pt}}\table
% \def\fontname{ptmrc8t}   \init{\PStext\text{12pt}}\table
% \def\fontname{pzcmi8t}   \init{\PStext\text{12pt}}\table
% \def\fontname{pzdr}      \init\table
% \def\fontname{psyr}      \init\table
% \def\fontname{psyro}     \init\table

% Slanted PostScript fonts:

% \def\fontname{ptmro8r}   \init\table        % see raw encoding
% \def\fontname{ptmro7t}   \init\halftable    % see OT1 encoding
% \def\fontname{ptmro8t}   \init{\PStext\text{12pt}}\table
% \def\fontname{ptmbo8t}   \init{\PStext\text{12pt}}\table

% Utopia fonts require PFA files to be downloaded:

% \def\fontname{putr8t}    \init{\PStext\text{12pt}}\table
% \def\fontname{putri8t}   \init{\PStext\text{12pt}}\table
% \def\fontname{putrc8t}   \init{\PStext\text{12pt}}\table
% \def\fontname{putb8t}    \init{\PStext\text{12pt}}\table
% \def\fontname{putbi8t}   \init{\PStext\text{12pt}}\table

\end
